package ch.zbw.timeline.service;

import java.util.List;

import ch.zbw.timeline.domain.Employee;
import ch.zbw.timeline.domain.LogEntry;
import ch.zbw.timeline.domain.LogType;

/**
 * Interface that handles the log.
 * 
 * @author Andreas Kaderli
 * @version 26.01.2012
 * 
 */
public interface LogService {

	/**
	 * 
	 * Method addLogEntry adds a new logEntry to the database.
	 * With the given parameters a new logEntry-object is generated and set.
	 * The initiated object is written to the logRepository.
	 * 
	 * @param logType the type of logEntriy
	 * @param employee that is 
	 * @param description that describes the logEntry
	 * @return returns the created logEntry
	 */
	public LogEntry addLogEntry(LogType logType, Employee employee, String description);

	/**
	 * 
	 * Method to get all the logEntries that are saved in the database as a list.
	 * 
	 * @return List of LogEntry
	 */
	public List<LogEntry> getAllLogEntries();

}
